﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace OR
{
    public class mEmpresa : Modelo
    {
        public mEmpresa()
        {
            ListaEndereco = new clcEndereco();
            Contato = new mContato();
            Pessoa = new mPessoa();
            Figura = new mTabelaImagem();
            Pessoa.DataAlteracao = DateTime.MinValue;
            Pessoa.Nascimento = DateTime.MinValue;
            DataCadastro = DateTime.Today;
            Ativo = true;
            EnderecoResidencial = 0;
            EnderecoCorrespondencia = 0;
            EnderecoComercial = 0;
            EnderecoCobranca = 0;
        }
        [DisplayName("Código")]
        [Required(ErrorMessage = "Campo Obrigatório")]
        public Int16 Codigo { get; set; }
        public mPessoa Pessoa { get; set; }
        public Int32 EnderecoResidencial { get; set; }
        public Int32 EnderecoCorrespondencia { get; set; }
        public Int32 EnderecoComercial { get; set; }
        public Int32 EnderecoCobranca { get; set; }
        public clcEndereco ListaEndereco { get; set; }
        public mContato Contato { get; set; }
        public mTabelaImagem Figura { get; set; }
        [DisplayName("Inscrição Municipal")]
        public String InscMunicipal { get; set; }
        [DisplayName("Código I.B.G.E")]
        public String IBGE { get; set; }
        [DisplayName("UF")]
        [StringLength(2, ErrorMessage = "Campo deve possuir no máximo {1} caracter(s)")]
        public String UFInscEstadual { get; set; }
        [DisplayName("Regime Situação Tributária")]
        public Int16 RegimeSituacaoTributaria { get; set; }
    }
}
